1289. Ланч

 

Влад хочет взять с собой на ланч пару фруктов. У него есть a бананов, b яблок и c груш. Сколькими способами он может выбрать 2 разных фрукта из имеющихся у него?

 

Вход. В одной строке заданы три неотрицательных числа: a, b, c. Все числа не превышают 106.

 

Выход. Выведите количество способов выбрать 2 фрукта разного вида.

 

Пример входа

Пример выхода

3 4 2

26

 

 

РЕШЕНИЕ

математика

 

Анализ алгоритма

Выбрать два разных фрукта можно одним из следующих способов:

·        банан и яблоко a * b способами;

·        банан и грушу a * c способами;

·        яблоко и грушу b * c способами;

Таким образом, выбрать два разных фрукта можно a * b + a * c + b * c способами. Учитывая, что a, b, c ≤ 106, ответ будет не более 3 * 1012. Следовательно, следует воспользоваться типом данных long long.

 

Реализация алгоритма

Читаем входные данные.

 

scanf("%lld %lld %lld",&a,&b,&c);

 

Вычисляем и выводим ответ.

 

res = a * b + a * c + b * c;

printf("%lld\n",res);

 

Java реализация

 

import java.util.*;

 

class Main

{

  public static void main(String[] args)

  {

    Scanner con = new Scanner(System.in);

    long a = con.nextLong();

    long b = con.nextLong();

    long c = con.nextLong();

    long res = a * b + a * c + b * c;

    System.out.println(res);

    con.close();

  }

}

 

Python реализация

Читаем входные данные.

 

a, b, c = map(int,input().split())

 

Вычисляем и выводим ответ.

 

res = a * b + a * c + b * c

print(res)